<?php
include_once 'db.php';
include_once 'errores.php';
include_once 'utilidades.php';

/* Si no hay sesión para el usuario es que la entrada no se ha producido a
 * través de login, por lo que se redirige a la página identificación.
*/

comprobarSesion();

// <editor-fold defaultstate="collapsed" desc="Funciones PHP">
function mostrarAlbumes() {
    $sql = "select * from albumes";
    $conexion = conectar("kcbb");
    $result = consultar($sql, $conexion);
    if(mysql_num_rows($result) > 0) {
        echo "<table>\n";
        echo "<tr> \n";
        echo "<th width='200'>Nombre</th> \n";
        echo "<th width='600'>Descripci&oacute;n</th> \n";
        echo "<th width='100'>Portada</th> \n";
        echo "</tr> \n";
        while($fila = mysql_fetch_array($result)) {
            echo "<tr> \n";
            echo "<td>$fila[nombre]</td> \n";
            echo "<td>$fila[descripcion]</td> \n";
            echo "<td class='centrar'>";
            imagen("Contenido/".$fila['imagen'],95,110);
            echo "<br />";
            echo "<form action='' method='post'> \n";
            echo "<br /><input type='submit' name='borrar' value='Borrar' /> \n";
            echo "<input type='hidden' name='album' value='$fila[nombre]' \n";
            echo "</form> \n";
            echo "</td> \n";
            echo "</tr> \n";
        }
        echo "</table>";
    }
    mysql_close($conexion);
}

function insertarAlbum() {
    // Se senean las entradas y se comprueba que le tamaño de imagen sea válido.
    $filtros = array (
            "nombre" => array ('filter'=>FILTER_SANITIZE_STRING),
            "descripcion" => array ('filter'=>FILTER_SANITIZE_STRING)
    );
    $resultado = filter_input_array(INPUT_POST, $filtros);

    if(($resultado['nombre'] == "") || ($resultado['descripcion'] == ""))
        $errores[] = "Nombre y descripci&oacute;n no pueden estar vac&iacute;os.";
    else if(($resultado['nombre'] == false) || ($resultado['descripcion'] == false))
        $errores[] = "No se permite el uso de etiquetas HTML.";

    if(! verificarFecha($_POST['fecha']))
        $errores[] = "Fecha no v&aacute;lida. Debe ajustarse al formato 'dd/mm/aaaa'";

    if(!tamagnoArchivoValido($_FILES['portada'], 1024*512))
        $errores[] = "El tama&ntilde;o de la imagen no puede superar 512 kB.";
    else if(!formatoImagenValido($_FILES['portada']))
        $errores[] = "Tipo de fichero no v&aacute;lido.";


    //Si no se han producido errores, procede a la inserción del registro
    if(!isset($errores)) {
        $nombre = corregirAcentos($resultado['nombre']);
        $descripcion = corregirAcentos($resultado['descripcion']);
        $archivo = "kcbb_".time().".jpg";
        $fecha = fechaMsql($_POST['fecha']);
        $sql = "insert into albumes (nombre, descripcion, imagen, fecha) values ('$nombre', '$descripcion', '$archivo','$fecha')";
        $conexion = conectar("kcbb");
        $result = insertar($sql, $conexion);
        move_uploaded_file($_FILES['portada']['tmp_name'],"Contenido/".$archivo);
        mysql_close($conexion);
    }

    return $errores;
}

function borrarAlbum() {
    $album = $_POST['album'];
    $conexion = conectar("kcbb");
    $sqlFotos = "select * from media where album = '$album'";
    $sqlAlbum = "select * from albumes where nombre = '$album'";
    $sqlEliminarFotos = "delete from media where album = '$album'";
    $sqlEliminarAlbum = "delete from albumes where nombre = '$album'";

    /* Primero se seleccionan todas las fotos del album que se pretende borrar.
     * Se recorre el conjunto de datos y se eliminan los archivos de fotos del
     * directorio "Contenido/".
    */
    $result = consultar($sqlFotos, $conexion);
    if(mysql_num_rows($result) > 0) {
        while($fila = mysql_fetch_array($result)) {
            $archivo = "Contenido/".$fila['archivo'];
            unlink($archivo);
        }
    }
    $result = consultar($sqlAlbum, $conexion);
    if(mysql_num_rows($result) > 0) {
        while($fila = mysql_fetch_array($result)) {
            $archivo = "Contenido/".$fila['imagen'];
            unlink($archivo);
        }
    }

    /* Una vez borrados los archivos físicos, se eliminan las referencias en la
     * base de datos. Primero las fotos y después el album.
    */
    consultar($sqlEliminarFotos, $conexion);
    consultar($sqlEliminarAlbum, $conexion);
    mysql_close($conexion);
}

// </editor-fold>

?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <meta name="Robots" content="all" />
        <meta name="Keywords" content="blues, band, spain, españa, kid, guitar, guitarrista, carlos moreno, music" />
        <link rel="stylesheet" type="text/css" href="estilo.css" />
        <title>Kid Carlos Blues Band - Administraci&oacute;n</title>
    </head>
    <body>
        <div id="principal">
            <?php
            include_once 'menu.php';
            ?>
            <div id="contenedor">
                <div id="cabecera">
                    <img src="Img/Cabecera.png" alt="Cabecera" />
                </div>
                <div class="columna">
                    <?php
                    include 'admin_menu.php';
                    ?>
                </div>
                <div class="columnaAncha">
                    <h3>&Aacute;lbumes</h3>
                    <?php
                    if(isset($_POST['crear'])) {
                        $errores = insertarAlbum();
                    } else if(isset($_POST['borrar'])) {
                        $errores = borrarAlbum();
                    }
                    echo "<div class='formulario'> \n";
                    echo "<form action='' method='post' enctype='multipart/form-data'> \n";
                    echo "<pre>Nombre:  <input type='text' name='nombre' size='54' /></pre>\n";
                    echo "<pre>Portada: <input type='file' name='portada' size='40' /></pre>\n";
                    echo "<pre>Fecha: <input type='text' name='fecha' size='15' /></pre>\n";
                    echo "<pre>Descripci&oacute;n:<br /><textarea name='descripcion' rows='4' cols='50' /></textarea></pre>\n";
                    echo "<input type='submit' name='crear' value='Crear Album' /> \n";
                    echo "</form> \n";
                    echo "</div>\n";
                    if(isset($errores))
                        mostrarErrores($errores);
                    echo "<h3> </h3>";
                    mostrarAlbumes();
                    ?>
                </div>
                <?php
                include_once 'pie.php';
                ?>
            </div>
            <div id="logo">
                <img src="Img/logo.png" alt="Logo del grupo" />
            </div>
        </div>
    </body>
</html>
